#ifndef POINTVIEWDIALOG_H
#define POINTVIEWDIALOG_H

#include <QDialog>
#include <QStandardItemModel>
#include <QStringListModel>
#include "../CommunicateDelegate/hmicommunicate.h"


namespace Ui {
class PointViewDialog;
}

class PointViewDialog : public QDialog
{
    Q_OBJECT

public:
    explicit PointViewDialog(QWidget *parent = 0);
    ~PointViewDialog();

    void setTableView();
    void changeLanguage();

private:
    Ui::PointViewDialog *ui;

    QStandardItemModel  *model;

public:
    QStringListModel *model2 ;

    QVector <QString > sixAxisName;

public:
    /**
     * @brief updateView　显示更新函数
     */
    void updateView();

    /**
     * @brief setCurrentRow             显示选择的当前点数据
     * @param t
     */
    void setCurrentRowToShow(int t);

signals:
    /**
     * @brief msgBoxSignal      通知 打开消息框
     */
    void msgBoxSignal(int type,QString title,QString text);
    /**
     * @brief jMove             关节移动到点
     * @param index             点号
     */
    void jMoveSignal(int index);
    /**
     * @brief lMove             直线移动到点
     * @param index             点号
     */
    void lMoveSignal(int index);
    /**
     * @brief recordPoint       载入点
     * @param index             点号
     */
    void recordPoint(int index);
    /**
     * @brief changePointTypeToJoint    改变点到点类型
     * @param index             点号
     */
    void changePointTypeToJoint(int index);
    /**
     * @brief changePointTypeToCartesian    改变点到笛卡尔类型
     * @param index             点号
     */
    void changePointTypeToCartesian(int index);
    /**
     * @brief pointRegisterStatusSearch 更新数据信号函数
     */
    void pointRegisterStatusSearch();
    /**
     * @brief moveStop          停止移动信号函数
     */
    void moveStopSignal();

private slots:
    void on_pushButton_clicked();

    void on_pushButton_3_pressed();

    void on_pushButton_4_pressed();

    void on_pushButton_2_clicked();

    void on_pushButton_5_clicked();

    void on_pushButton_6_clicked();

    void on_pushButton_3_released();

    void on_pushButton_4_released();

    void on_listView_clicked(const QModelIndex &index);

    void on_returnBtn_clicked();
};

#endif // POINTVIEWDIALOG_H
